The present invention relates generally to efficient use of display space on a data display device. More particularly, the present invention relates to methods of using physical buttons to access functions available from software and hardware associated with the display device, without necessarily using the display space on the display device to indicate the available functions until prompted to do so by a user.
As used in this application, xe2x80x9cbuttonxe2x80x9d refers to various types of buttons, such as push buttons, touch-buttons, switches, sliders, knobs, dials, trackballs, mice, levers, pads, etc. Various buttons are described and shown in more detail in the ""873 application. The phrase xe2x80x9cbutton setxe2x80x9d is used herein to describe a plurality of buttons, which, when activated in combination, have a single effect as if the button set were a single physical button. For example, activating two separate physical buttons substantially simultaneously may initiate a first function, whereas activating the same two buttons with a third button substantially simultaneously may initiate a second function. Unless the context indicates otherwise, whenever the display or function of a button is discussed, it is to be understood that the discussion also includes a button set.
xe2x80x9cActivatexe2x80x9d as used herein means to perform the required act or acts on a button that indicate to a device associate with the button, that the button has been engaged. For example, xe2x80x9cactivatexe2x80x9d may refer to pushing, touching, switching, sliding, turning, dialing, rolling, clicking, etc., depending on the physical characteristics of the button involved.
A particular button may have a variety of physical motions associated therewith that could cause activation thereof, perhaps for different purposes. For example, activation of a button by a first type of physical motion (e.g., pushing forward) may cause a first event to occur, such as displaying information on the display to describe a function of the button. An activation causing this type of event is referred to herein as a xe2x80x9cdisplay activationxe2x80x9d, and the motion associated therewith is referred to herein as a xe2x80x9cdisplay activation motionxe2x80x9d. An activation of the same button by a different type of physical motion (e.g., pushing downward) may cause a second event to occur, such as executing a function associated with the button. An activation causing this type of event is referred to herein as an xe2x80x9cexecution activationxe2x80x9d, and the motion associated therewith is referred to herein as an xe2x80x9cexecution activation motionxe2x80x9d. A particular motion associated with a particular button may be a display activation motion, an execution activation motion, or another type of motion, due to a predetermined or programmed association.
Also in this application, the terms xe2x80x9cuserxe2x80x9d, xe2x80x9cviewerxe2x80x9d, and xe2x80x9cconsumerxe2x80x9d are used interchangeably depending on the context, to refer to a person using the methods and devices described herein. A user may be a xe2x80x9clogical userxe2x80x9d. A xe2x80x9clogical userxe2x80x9d may be a single user, or a group of users having shared or aggregated program preferences. For example, xe2x80x9ckidsxe2x80x9d may be a logical user, for which program preferences are determined by a parent. Or xe2x80x9ccritics"" choicexe2x80x9d may be a logical user, for which program preferences are determined by a group of program critics. Or xe2x80x9cdefaultxe2x80x9d may be a logical user, for which program preferences are determined by a predetermined or random algorithm.
As used in this application, the term xe2x80x9cactionxe2x80x9d refers to any sequence of events performed or required to be performed by a user to display, access, and/or execute an available function. Actions include, but are not limited to, keyboard events (e.g., touching or pressing a key or keys simultaneously or in sequence), mouse events (moving, right- or left-clicking, double-clicking, dragging, etc.), actuating a button (e.g., pressing, releasing, sliding, toggling, squeezing, etc.), screen events (e.g., touching a screen), and any other event in which a signal or other data is input to a device in response thereto.
Many electronic and other devices have various functions associated therewith, and access to those functions may occur through a wide variety of mechanisms. Numerous combinations of physical buttons and software or on-screen buttons are provided to enable users to access available functions. Although eventually a user may memorize the actions required to access and execute some or all of the available functions, prior to that point there needs to be a way to communicate the information to the user. Typically, there is a separate User""s Guide, cheat-sheet, display screen or other visual indicator associated with the device that is used for that purpose.
A simple example is a personal computer, used in combination with a keyboard, mouse, or other data input device, a display monitor, and associated software. It is well-known in the art of personal computing to use industry standard keys (such as ALT, CTRL, SHIFT, Apple Command, and Windows Command) in combination with other available keys, to access and execute a desired function. Similarly, it is well-known to use Function keys, such as F1, F2, etc., or to use a mouse to point-and-click or point-and-double-click a specified icon or menu option to access and/or execute a function associated therewith.
In each of the above-mentioned situations, however, the functions associated with a particular keystroke sequence or other input action are typically displayed in response to a first action or set of actions, and then the desired function is executed by use of a second action or set of actions. For example, it is common for application software programs to have help icons or help menus, which are accessible by a particular mouse or keyboard sequence. Once within the help module, a user can navigate to determine a second set of actions required to perform the desired function. Many times this even requires a user to engage the use of various cooperating input devices, such as a mouse to point to the menu, and then a keyboard to navigate through the menu and eventually access and execute the desired function.
An example of a dual-function button wherein two functions are performed from the same button, is a shutter button on some types of cameras. On SLR cameras that have manual focus but automatic exposure control, typically pressing the shutter button half-way will give an indication of what the exposure rate will be, and following through and fully depressing the shutter button result in the picture being taken. Similarly, on many auto-focus cameras, depressing the shutter half-way causes the auto-focus mechanism to set for the subject currently in view, and full shutter depression then takes the picture. The functions of these xe2x80x9cdual-functionxe2x80x9d buttons on cameras, however, are not programmable.
Another dual-function functionality known as xe2x80x9ctool tips"" is common in software. Tool tips are short pop-up textual descriptions associated with visual icons. The icons represent buttons that provide different kinds of program functionality such as opening, saving, or printing files. If a user moves the mouse over these icons and holds it there for a second or two, the text description pops up telling the user what the button will do if the user subsequently clicks on it. These tool-tips are similar to the xe2x80x9cballoon helpxe2x80x9d provided with Macintosh computers, and they are common in programs such as Microsoft Word.
Tool-tips may be useful user interface devices in standard computer applications, because they enable novice users to simply point to an on-screen icon, and find out what it will do. For more experienced users, they can simply click on the icon representing the functional tool, without waiting for the description of the function to pop up. However, there are at least two major drawbacks to tool-tips. First, they depend on a xe2x80x9cmouse and keyboardxe2x80x9d input metaphor, where it is possible to point the mouse at an icon without clicking on that icon. However, for devices with graphical touch-screens, the natural interaction method is to point one""s finger at an icon by touching the screen, and have it activated immediately. In this case, there is no distinction possible between xe2x80x9cpointingxe2x80x9d and xe2x80x9cclickingxe2x80x9d. Some touch-screen-based applications do create this distinction using a pen, and requiring that the pen be tapped twice in quick succession in order to create a xe2x80x9cclickxe2x80x9d, whereas just touching the pen once to the touch-screen surface constitutes a xe2x80x9cpointxe2x80x9d. But this is an awkward interaction style, especially if one is using one""s finger instead of a physical pen.
Another significant drawback with tool-tips is that they take up screen display space. For each function button to which one wishes to attach a tool-tip, it is necessary to provide an icon, such that pointing to it will cause the textual description to pop-up. In the context of a small-screen display, the continuous display of such icons uses up precious display space resources even when the icons are not in use.
The Palm Pilot, by 3-Com, Corporation, has a small touch-screen and a small number of physical buttons. However, the Palm Pilot""s physical buttons are dedicated to always performing a single operation. The buttons are not at all versatile. They simply switch between four primary program application screens, and have no other use.
A desirable method of overcoming the above-referenced drawbacks in the prior art is to provide physical buttons on the devices, that may be programmable, wherein a function of each button or combination of buttons (button set) is displayed on an associated display when said button or button set is activated using a display activation motion, and a function of the button or button set is executed when the button or button set is activated using an execution activation motion, different than the display activation motion. This would allow the display to be free of unnecessary icons, menus, text, etc., and to be devoted to actual content, unless and until a user has a need or desire to view information related to the function of a button associated with the device containing the display.
As technology has been advancing at a rapid pace, devices have become increasingly small in size, and many such devices exist with fully integrated input, processing, and display features, in a compact device suitable for being hand-held and operated. For example, hand-held calculators and hand-held video games have existed for many years, and more recently hand-held electronic organizers such as 3-Com Corporation""s Palm Pilot have become available. In addition, the ""873 application discloses a hand-held remote controller for consumer devices, having an integrated display.
As the size of these electronic devices has been decreasing, the degree of functionality associated with them has been increasing. This is due to better technology, market demand, and other factors. With these smaller devices, both the display area and the available space for physical buttons are limited, and it is therefore desirable to make efficient use of the space available in both respects. It thus becomes important to pack a high degree of functionality into such devices, using a relatively small number of physical buttons, and without using valuable display space to display to the user what the functions of each button are.
The present invention accomplishes these goals by providing physical buttons (preferably programmable) on the devices, wherein the function of each button or button set is displayed on an associated display when said button or button set is activated using a display activation motion, whereas the function of the button or button set is executed when the button or button set is activated using an execution activation motion, different than the display activation motion, wherein the execution activation motion is not necessarily preceded by the display activation motion.
The present invention thus provides systems and methods to allow maximally efficient use of screen space on these types of devices, while preserving maximal ease-of-use for consumers. The display space on an associated device is thus free from unnecessary clutter for experienced users familiar with the functions of the buttons, and the experienced user is thus required to perform only an execution activation motion associated with the button, never having to take time or waste display space associated with performing a display activation motion associated with the button. At the same time, less experienced users may enjoy the clutter-free display until they need to check to see what function a particular button or set of buttons performs, in which case they can simply perform a display activation motion in which case indications of the appropriate functions will appear on the display temporarily. The user may then perform an execution activation motion on the desired button or button set, to perform the desired function. Alternatively, the user may activate an escape sequence to clear the clutter from the display, or may perform a display activation motion on a second button or button set to see what function is associated with the second button or button set, or may simply wait for a suitable amount of time of non-activity to occur for the display to clear itself from clutter. Non-activity refers to no other buttons being activated on the device, and a suitable time may be either predetermined or programmed.
Thus, one aspect of the present invention involves using a first physical button on a device, in association with a display, to display and execute a function associated with the first physical button, by performing a display activation motion associated with the first physical button upon the first physical button; displaying on the display, in response to the display activation motion performed upon the first physical button, a description of a function associated with the first physical button; performing an execution activation motion associated with the first physical button upon the first physical button; and executing, in response to the execution activation motion performed upon the first physical button, the function associated with the first physical button; wherein the display activation motion associated with the first physical button is of a different type than the execution activation motion associated with the first physical button.
Another aspect of the present invention involves using a first physical button on a device comprising the first physical button and a second physical button, in association with a display, to display and execute a function associated with the first physical button, by performing a display activation motion associated with the first physical button upon the first physical button; displaying on the display, in response to the display activation motion performed upon the first physical button, a description of a function associated with the first physical button; displaying on the display, in response to the display activation motion performed upon the first physical button, a description of a function associated with the second physical button; performing an execution activation motion associated with the second physical button upon the second physical button; and executing, in response to the execution activation motion performed upon the second physical button, the function associated with the second physical button.
Another aspect of the present invention involves using a first physical button set on a device comprising the first physical button set and a second physical button set, in association with a display, to display and execute a function associated with the first physical button set, by performing a display activation motion associated with the first physical button set upon the first physical button set; displaying on the display, in response to the display activation motion performed upon the first physical button set, a description of a function associated with the first physical button set; displaying on the display, in response to the display activation motion performed upon the first physical button set, a description of a function associated with the second physical button set; performing an execution activation motion associated with the second physical button set upon the second physical button set; and executing, in response to the execution activation motion performed upon the second physical button set, the function associated with the second physical button set.
Thus, the systems and methods of the present invention allow the use of a display that is free of unwanted clutter typically present to describe the functions of physical buttons. The systems and methods of the present invention also provide a user with the ability to determine the function of a button if desired, and to have the function executed either with or without having first performed a display activation motion.
Other objects and advantages of the present invention will be apparent from the detailed description which follows, when read in conjunction with the associated drawings.